

package com.hazelcast.internal.partition.membergroup;

import com.hazelcast.cluster.Member;
import com.hazelcast.config.PartitionGroupConfig;
import com.hazelcast.spi.partitiongroup.MemberGroup;

import java.util.Collection;

/**
 * Defines how members will be grouped (e.g. during partition arrangement).
 *
 * @see PartitionGroupConfig#getGroupType()
 */
public interface MemberGroupFactory {

    Collection<MemberGroup> createMemberGroups(Collection<? extends Member> members);
}
